ЖДУ 2024-2025
    Головна
    Змагання
    Лекції
    Курси
    Дописи
    Лабораторні роботи
    Архів Олімпіад
Масиви
Увійти

Масиви

Масив – це набір елементів одного типу з одним іменем. Доступ до елементів масиву відбуважться через порядковий номер.

Оголошення одновимірних масивів.

Для Сі, одновимірним масивом (масив англійською - array) є список змінних, які є однакового типу, та достумапні через спільне ім'я. Одна змінна у такому списку, називається елемент масиву. Масиви формують зручний спосіб обробки груп поєднаних даних.

Загальна форма одновимірного масиву наступна:

тип   ім'я_змінної[розмір]; 
int arr[10]; //оголошено масив з 10 елементів. Індекси елементів від 0 до 9.
int mas[] ={ 8 , 2, 6, 2, 3, 4, 5 }; 

оголошено масив розмір якого задано кількістю елементів, масив ініціалізовано числами: 8 , 2, 6, 2, 3, 4, 5

int B[20] = {0};  // оголошено масив з 20 елементі, всі значення яких = 0;
int array[10] = {1}; 
/* 
   огодошено масив з 10 елементів, значення комірки з 
   номером 0 дорівнює 1. 
   Про решту комірок нічого невідомо.
*/
7 lines
230 bytes

Звертання до якогось елемента масиву здійснюється через індекс (тобто порядковий номер) цього елемента у масиві. В мові С++, всі масиви починаються з нуля. Це означає, що індеком першого елемента масиву є 0, а індекс останнього елемента масиву є розмір масиву - 1. Для звертання до якогось елемента масиву вкажіть ім'я масиву, за ним індекс потрібного вам елемента у квадратних дужках. Наступний фрагмент звертається до другого елемента масиву myarray: myarray[1]

Наступне твердження присвоює першому елементові масиву myarray значення 100:

 myarray[0] = {100}; 

Мова Сі зберігає одновимірні масиви у одному суміжному (не розірваному) місті пам'яті, де адреса масиву є адресою першого елемента цього масиву.

Vector

Vector – динамічний масив.

Приклад використання вектора значення

vector <int> v1;	//створити пустий вектор
vector <int> v2(20);	//створити  вектор з 20 елементів
vector <int> v2(20,5);	//створити  вектор з 20 елементів, кожен з яких дорывнюэ 5
int n = v2.size();	//визначення розміру вектора
v2.push_back(val);	//добавити до кінця вектора значення val
v2.ersse(v2.begin()+3);	//Видалення елементу з номером 3
v2.ersse(v2.begin()+3, v2.begin()+5);	//Видалення алементів від 3 по 5-й.
v2.insert(pos, val);	//Вставлення в pos значення val
v.resize(new_size);   //  змінити розмір вектора на new_size
9 lines
541 bytes

Приклад програм

Введення виведення масиву

#include <iostream>
using namespace std;
int main()
{
    int a[100]; //Оголошення масиву
    int n;
    cin>>n;
    for(int i=0;i<n;i++) // введення масиву
         cin>>a[i];

    for(int i=0;i<n;i++) // виведення масиву
       cout<<a[i]<<endl;
 
    return 0;
}
15 lines
281 bytes

Знаходження найбільшого елемента масиву

...
int max_el = a[0];
for(int i=0;i<n;i++)
{
   if(a[i] > max_el) max_el = a[i]  ;
}
...
7 lines
97 bytes

Введення вектора

#include <iostream>
#include <vector>
using namespace std;
int main()
{
    vector <int> v; //Оголошення вектора
    int n;
    cin>>n;
    for(int i=0;i<n;i++) // введення вектора
    {
       cin>>t;
       v.push_back(t)
     }         


    for(int i=0;i<v.size() ;i++) // виведення вектора
       cout<<v[i]<<endl;
 
    return 0;
}
20 lines
359 bytes
// Обхід вектора через ітератори:
for (vector<int>::iterator it = v.begin(); it != v.end(); it++) {
	int x = *it;
	...
}

//  З використанням типу auto, 11 стандарт і вище
for (auto i : v)
   cout<<i<<“ “;
10 lines
217 bytes

Двохвимірні масиви

  int mas[100][100];  // створення двохвимірного масива

  int b[100][100]={0};  // створення двохвимірного масива та онулення його
 
  int b[3][3]={{1,2,3},{4,5,6},{5,6,7}};  // створення двохвимірного масива та ініціалізація його

Введення двохвимірного масива

	int m,n;
	cin>>n>>m;
	for(int i=0;i<n;i++)
	{
		for(int j=0;j<m;j++)
		{
			cin>>mas[i][j];
		}
	}
9 lines
109 bytes

Ввиедення двохвимірного масива

	for(int i=0;i<n;i++)
	{
		for(int j=0;j<m;j++)
		{
			cout<<mas[i][j]<<" ";
		}
		cout<<endl;
	}
8 lines
106 bytes
У цій статті
  • Масиви
  • Оголошення одновимірних масивів.
  • Vector
  • Приклад програм
  • Введення виведення масиву
  • Знаходження найбільшого елемента масиву
  • Введення вектора
  • Двохвимірні масиви
  • Введення двохвимірного масива
  • Ввиедення двохвимірного масива